package com.zrrd.spring_03_annotation.config;

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;

/**
 * @author WanJl
 * @version 1.0
 * @title SpringConfig
 * @description 我们定义一个SpringConfig把它作为spring的核心配置类，不再采用applicationContext.xml配置文件了
 * @create 2024/10/27
 */
//声明当前类为spring的核心配置类，添加一个注解：@Configuration
// 有了这个注解，当前类就相当于resources文件夹下的applicationContext.xml文件
@Configuration

//添加一个注解：@ComponentScan，
// 有了这个注解，就相当于添加了<context:component-scan base-package="com.zrrd.spring_03_annotation"/>标签
//@ComponentScan({"com.zrrd.spring_03_annotation.service","com.zrrd.spring_03_annotation.mapper"})
@ComponentScan("com.zrrd.spring_03_annotation")

//配置了@PropertySource("classpath:my.properties")注解后，当spring启动后，
// 会自动加载当前项目路径下(classpath:)的my.properties文件，并把文件中的属性名和属性值，注入到IOC容器中。
//后续可以在其他类中，使用@Value注解，以@Value("${属性名}")的方式获取到属性值
@PropertySource("classpath:my.properties")
public class SpringConfig {
}
